Đa hình (khoa học máy tính)

Trong ngôn ngữ lập trìnhlý thuyết kiểu, đa hình (tiếng Anh: polymorphism, từ tiếng Hy Lạp πολύς, polys, "nhiều" và μορφή, morphē, "hình dạng") là việc cung cấp một giao diện cho các thực thể thuộc nhiều kiểu khác nhau.[1] Một kiểu đa hình là kiểu mà những toán tử của nó có thể được áp dụng cho các giá trị của kiểu khác, hoặc các kiểu.[2] Có nhiều loại đa hình cơ bản, gồm: đa hình tùy biến (ad hoc polymorphism), đa hình tham số (parametric polymorphism) và đa hình dẫn xuất (subtyping, hay còn gọi là subtype polymorphism, inclusion polymorphism).